package etf.pia.entity;
// Generated Feb 13, 2014 1:21:45 AM by Hibernate Tools 3.6.0


import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

/**
 * LabVezbe generated by hbm2java
 */
@Entity
@Table(name="lab_vezbe"
    ,catalog="pia"
)
public class LabVezbe  implements java.io.Serializable {


     private Integer idLabVezbe;
     private Predmet predmet;
     private String propozicije;
     private String naziv;
     private Set<Fajlovi> fajlovis = new HashSet<Fajlovi>(0);

    public LabVezbe() {
    }

	
    public LabVezbe(Predmet predmet, String propozicije, String naziv) {
        this.predmet = predmet;
        this.propozicije = propozicije;
        this.naziv = naziv;
    }
    public LabVezbe(Predmet predmet, String propozicije, String naziv, Set<Fajlovi> fajlovis) {
       this.predmet = predmet;
       this.propozicije = propozicije;
       this.naziv = naziv;
       this.fajlovis = fajlovis;
    }
   
     @Id @GeneratedValue(strategy=IDENTITY)

    
    @Column(name="id_lab_vezbe", unique=true, nullable=false)
    public Integer getIdLabVezbe() {
        return this.idLabVezbe;
    }
    
    public void setIdLabVezbe(Integer idLabVezbe) {
        this.idLabVezbe = idLabVezbe;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="predmet", nullable=false)
    public Predmet getPredmet() {
        return this.predmet;
    }
    
    public void setPredmet(Predmet predmet) {
        this.predmet = predmet;
    }

    
    @Column(name="propozicije", nullable=false, length=65535)
    public String getPropozicije() {
        return this.propozicije;
    }
    
    public void setPropozicije(String propozicije) {
        this.propozicije = propozicije;
    }

    
    @Column(name="naziv", nullable=false, length=45)
    public String getNaziv() {
        return this.naziv;
    }
    
    public void setNaziv(String naziv) {
        this.naziv = naziv;
    }

@ManyToMany(fetch=FetchType.LAZY)
    @JoinTable(name="lab_vezbe_has_fajlovi", catalog="pia", joinColumns = { 
        @JoinColumn(name="lab_vezbe_id_lab_vezbe", nullable=false, updatable=false) }, inverseJoinColumns = { 
        @JoinColumn(name="fajlovi_id_fajl", nullable=false, updatable=false) })
    public Set<Fajlovi> getFajlovis() {
        return this.fajlovis;
    }
    
    public void setFajlovis(Set<Fajlovi> fajlovis) {
        this.fajlovis = fajlovis;
    }




}


